|
|
@@ -9,7 +9,7 @@ from itertools import chain, groupby
|
9
|
9
|
|
10
|
10
|
from django.conf import settings
|
11
|
11
|
from django.db import transaction
|
12
|
|
-from django.db.models import Count, Sum
|
|
12
|
+from django.db.models import Count, Sum, Q
|
13
|
13
|
from django_logit import logit
|
14
|
14
|
from django_response import response
|
15
|
15
|
from paginator import pagination
|
|
|
@@ -41,10 +41,10 @@ def querysn(request):
|
41
|
41
|
if not AdministratorInfo.objects.filter(admin_id=admin_id, admin_type=AdministratorInfo.MAINTENANCE, user_status=AdministratorInfo.ACTIVATED, status=True).exists():
|
42
|
42
|
return response(AdministratorStatusCode.MAINTENANCE_NOT_FOUND)
|
43
|
43
|
|
44
|
|
- log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, submit_during_activity=True).order_by('has_used', '-pk').first()
|
|
44
|
+ log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, submit_during_activity=True, status=True).order_by('has_used', '-pk').first()
|
45
|
45
|
|
46
|
46
|
if not log:
|
47
|
|
- log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn).order_by('-submit_during_activity', 'dupload').first()
|
|
47
|
+ log = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, model_id=model_id, serialNo=sn, status=True).order_by('-submit_during_activity', 'dupload').first()
|
48
|
48
|
|
49
|
49
|
if not log:
|
50
|
50
|
return response(ProductMachineStatusCode.SN_NOT_FOUND)
|
|
|
@@ -63,7 +63,7 @@ def queryusedsn(request):
|
63
|
63
|
if not AdministratorInfo.objects.filter(admin_id=admin_id, admin_type=AdministratorInfo.MAINTENANCE, user_status=AdministratorInfo.ACTIVATED, status=True).exists():
|
64
|
64
|
return response(AdministratorStatusCode.MAINTENANCE_NOT_FOUND)
|
65
|
65
|
|
66
|
|
- logs = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, admin_id=admin_id, has_used=True).order_by('-used_at')
|
|
66
|
+ logs = ConsumeInfoSubmitLogInfo.objects.filter(brand_id=brand_id, admin_id=admin_id, has_used=True, status=True).order_by('-used_at')
|
67
|
67
|
logs = [log.data for log in logs]
|
68
|
68
|
|
69
|
69
|
return response(200, 'Query Used SN Success', u'查询核销序列号成功', data={
|
|
|
@@ -95,7 +95,8 @@ def usecoupon(request):
|
95
|
95
|
model_id=model_id,
|
96
|
96
|
serialNo=sn,
|
97
|
97
|
submit_during_activity=True,
|
98
|
|
- has_used=False
|
|
98
|
+ has_used=False,
|
|
99
|
+ status=True
|
99
|
100
|
).first()
|
100
|
101
|
if not log:
|
101
|
102
|
return response(ProductMachineStatusCode.SN_NOT_FOUND)
|
|
|
@@ -559,11 +560,13 @@ def statistic_consumer(request):
|
559
|
560
|
|
560
|
561
|
def record_consumer(request):
|
561
|
562
|
brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
|
|
563
|
+ page = request.POST.get('page', 1)
|
|
564
|
+ num = request.POST.get('num', 20)
|
562
|
565
|
admin_id = request.POST.get('admin_id', '')
|
563
|
566
|
start_time = request.POST.get('start_time', '')
|
564
|
567
|
end_time = request.POST.get('end_time', '')
|
565
|
|
- model_name = request.POST.get('model_name', '')
|
566
|
|
- phone = request.POST.get('phone', '')
|
|
568
|
+ query = request.POST.get('query', '')
|
|
569
|
+ dupload = request.POST.get('dupload', 0)
|
567
|
570
|
|
568
|
571
|
if brand_id != settings.KODO_DEFAULT_BRAND_ID:
|
569
|
572
|
return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
|
|
|
@@ -573,22 +576,26 @@ def record_consumer(request):
|
573
|
576
|
except AdministratorInfo.DoesNotExist:
|
574
|
577
|
return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
|
575
|
578
|
|
576
|
|
- logs = ConsumeInfoSubmitLogInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time, test_user=False, model_uni_name__contains=model_name, phone__contains=phone)
|
|
579
|
+ logs = ConsumeInfoSubmitLogInfo.objects.filter(Q(status=True) & Q(ymd__gte=start_time) & Q(ymd__lte=end_time) & Q(test_user=False) & Q(model_name__contains=query) | (Q(phone__contains=query))).order_by('-created_at')
|
577
|
580
|
|
|
581
|
+ count = logs.count()
|
|
582
|
+ logs, left = pagination(logs, page, num)
|
578
|
583
|
logs = [log.admindata for log in logs]
|
579
|
584
|
|
580
|
585
|
return response(200, 'Get Consumer Record Success', u'获取消费者销售记录成功', data={
|
581
|
|
- 'logs': logs
|
|
586
|
+ 'logs': logs,
|
|
587
|
+ 'count': count,
|
|
588
|
+ 'left': left
|
582
|
589
|
})
|
583
|
590
|
|
584
|
591
|
def record_sale(request):
|
585
|
592
|
brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
|
586
|
593
|
admin_id = request.POST.get('admin_id', '')
|
|
594
|
+ page = request.POST.get('page', 1)
|
|
595
|
+ num = request.POST.get('num', 20)
|
587
|
596
|
start_time = request.POST.get('start_time', '')
|
588
|
597
|
end_time = request.POST.get('end_time', '')
|
589
|
|
- model_name = request.POST.get('model_name', '')
|
590
|
|
- clerk_name = request.POST.get('clerk_name', '')
|
591
|
|
- distributor_name = request.POST.get('distributor_name', '')
|
|
598
|
+ query = request.POST.get('query', '')
|
592
|
599
|
|
593
|
600
|
if brand_id != settings.KODO_DEFAULT_BRAND_ID:
|
594
|
601
|
return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
|
|
|
@@ -598,10 +605,14 @@ def record_sale(request):
|
598
|
605
|
except AdministratorInfo.DoesNotExist:
|
599
|
606
|
return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
|
600
|
607
|
|
601
|
|
- logs = SaleclerkSubmitLogInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time, test_user=False, test_sn=False, model_uni_name__contains=model_name, clerk_name__contains=clerk_name, distributor_name__contains=distributor_name)
|
|
608
|
+ logs = SaleclerkSubmitLogInfo.objects.filter(Q(status=True) & Q(ymd__gte=start_time) & Q(ymd__lte=end_time) & Q(test_user=False) & Q(test_sn=False) & (Q(model_name__contains=query) | Q(clerk_name__contains=query) | Q(distributor_name__contains=query))).order_by('-created_at')
|
602
|
609
|
|
|
610
|
+ count = logs.count()
|
|
611
|
+ logs, left = pagination(logs, page, num)
|
603
|
612
|
logs = [log.admindata for log in logs]
|
604
|
613
|
|
605
|
614
|
return response(200, 'Get Sale Record Success', u'获取销售员销售记录成功', data={
|
606
|
|
- 'logs': logs
|
|
615
|
+ 'logs': logs,
|
|
616
|
+ 'count': count,
|
|
617
|
+ 'left': left
|
607
|
618
|
})
|